namespace ext.dd
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// A custom drag proxy implementation specific to {@link Ext.Panel}s. This class is primarily used internally
	/// for the Panel&apos;s drag drop implementation, and should never need to be created directly.
	/// </summary>
	/// <definedin>src\widgets\PanelDD.js</definedin>
	[ScriptName("PanelProxy")]
	[ScriptNamespace("Ext.dd")]
	[Imported()]
	public partial class PanelProxy
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		/// <param name="The">{@link Ext.Panel} to proxy for</param>
		/// <param name="Configuration">options</param>
		public PanelProxy(ext.Panel The, object Configuration)
		{
		}
		
		public PanelProxy(ext.dd.PanelProxy_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public PanelProxy()
		{
		}
		#endregion
		
		#region Fields
		/// <summary>
		/// True to insert a placeholder proxy element while dragging the panel,
		/// false to drag with no proxy (defaults to true).
		/// </summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		[ScriptName("insertProxy")]
		public bool InsertProxy;
		#endregion
		
		#region Methods
		/// <summary>Gets the proxy&apos;s element</summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		/// <returns>The proxy&apos;s element</returns>
		[ScriptName("getEl")]
		public ext.Element GetEl()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Gets the proxy&apos;s ghost element</summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		/// <returns>The proxy&apos;s ghost element</returns>
		[ScriptName("getGhost")]
		public ext.Element GetGhost()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Gets the proxy&apos;s element</summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		/// <returns>The proxy&apos;s element</returns>
		[ScriptName("getProxy")]
		public ext.Element GetProxy()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Hides the proxy</summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		[ScriptName("hide")]
		public void Hide()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Shows the proxy</summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		[ScriptName("show")]
		public void Show()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Moves the proxy to a different position in the DOM. This is typically called while dragging the Panel
		/// to keep the proxy sync&apos;d to the Panel&apos;s location.
		/// </summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		/// <param name="parentNode">The proxy&apos;s parent DOM node</param>
		/// <param name="before">
		/// The sibling node before which the proxy should be inserted (defaults
		/// to the parent&apos;s last child if not specified)
		/// </param>
		[ScriptName("moveProxy")]
		public void MoveProxy(System.Html.Element parentNode, System.Html.Element before)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Moves the proxy to a different position in the DOM. This is typically called while dragging the Panel
		/// to keep the proxy sync&apos;d to the Panel&apos;s location.
		/// </summary>
		/// <definedin>src\widgets\PanelDD.js</definedin>
		/// <param name="parentNode">The proxy&apos;s parent DOM node</param>
		[ScriptName("moveProxy")]
		public void MoveProxy(System.Html.Element parentNode)
		{
			throw new System.Exception("Imported - not implemented");
		}
		#endregion
	}
}
